package com.dragon.repository.entity;

import lombok.Data;

import java.util.List;

@Data
public class WorkflowJson {

    /**
     * 节点名称
     */
    private String nodeName;

    /**
     * 节点类型：0发起，1审核，2抄送人，3条件
     */
    private Integer type;

    /**
     * 审核人成员
     */
    private List<Admin> nodeUserList;

    /**
     * 审核部门列表
     */
    private List<Department> nodeRoleList;

    /**
     * 条件路由体检
     */
    private List<WorkflowJson> conditionNodes;

    /**
     * 条件路由条件
     */
    private List<ConditionList> conditionList;

    /**
     * 允许发送人自选抄送人
     */
    private Boolean userSelectFlag;

    /**
     * 条件优先级
     */
    private Integer priorityLevel;


    /**
     * 多人审批方式
     */
    private Integer conditionMode;

    /**
     * 自定义连续主管审批层级1-7级
     */
    private Integer directorLevel;

    /**
     * 连续主管审批重点0直到最上层主管，1自定义审批终点
     */
    private Integer directorMode;

    /*指定主管层级1-7级*/
    private Integer examineLevel;

    /**
     * 多人审批方式：1按顺序一次审批，2会签（可同时审批，每个人必须审批通过），3或签（有一人审批通过即可）
     */
    private Integer examineMode;

    /**
     * 发起人自选模式；1自选一个人，2自选多个人
     */
    private Integer selectMode;

    /**
     * 审批人员类型：1指定成员，2直接主管，3部门，4发起人自选，5发起人自己，6连续多级主管
     */
    private Integer setType;

    /**
     * 是否允许加签:0不允许，1允许
     */
    private Integer isAddSign;


    //审批期限：最小0小时
    private Integer term;

    //审批期限超时自动审批：true，false
    private Boolean termAuto;

    //审批期限超时后执行类型：0自定通过，1自动拒绝
    private Integer termMode;

    //下级节点
    private WorkflowJson childNode;

    private Integer number;

}
